# -*- coding: utf-8 -*-
'''
Created on 4/05/2012

@author: EdwarC
'''
from webapp.models import TaxonomiaCampo, EstadoSolicitud, UnidadTiempo,\
    TipoCampo, Formulario, FormularioCampos, Solicitud, SolicitudCampos
from django.contrib import admin

class TaxonomiaCampoAdmin(admin.ModelAdmin):
    fieldsets = [
        ('Información básica', {'fields': [
            'codigo',
            'nombre',]}),
    ]
    
    list_display = (
        'codigo',
        'nombre',      
    )
    
    search_fields = ('codigo', 'nombre')


class EstadoSolicitudAdmin(admin.ModelAdmin):
    fieldsets = [
        ('Información básica', {'fields': [
            'codigo',
            'nombre',]}),
    ]
    
    list_display = (
        'codigo',
        'nombre',      
    )
    
    search_fields = ('codigo', 'nombre')
    
    

class UnidadTiempoAdmin(admin.ModelAdmin):
    fieldsets = [
        ('Información básica', {'fields': [
            'codigo',
            'nombre',]}),
    ]
    
    list_display = (
        'codigo',
        'nombre',      
    )
    
    search_fields = ('codigo', 'nombre')

    

class TipoCampoAdmin(admin.ModelAdmin):
    fieldsets = [
        ('Información básica', {'fields': [
            'etiqueta',
            'tipo',
            'descripcion',]}),
    ]
    
    list_display = (
        'etiqueta',
        'tipo',
        'descripcion',      
    )
    
    search_fields = ('etiqueta', 'tipo', 'descripcion')
    
    
class FormularioCamposInline(admin.TabularInline):
    model = FormularioCampos
    extra = 0
    raw_id_fields = ('tipo_campo', 'taxonomia')
    fields = ('taxonomia', 'etiqueta', 'ayuda', 'obligatorio', 'orden', 'validaciones')
    readonly_fields = ('taxonomia', 'etiqueta', 'ayuda', 'obligatorio', 'orden', 'validaciones')


class FormularioAdmin(admin.ModelAdmin):
    raw_id_fields = ('empresa',)
    
    fieldsets = [
        ('Información básica', {'fields': [
            'empresa',
            'titulo',
            'descripcion',
            'palabras_clave',
            'publicado',
            'fecha_publicacion',
            'fecha_vencimiento',
            'duracion',
            'unidad_tiempo',
            ]}),
    ]
    
    list_display = (
        'nombre_empresa',
        'titulo',
        'palabras_clave',      
    )
    
    inlines = [FormularioCamposInline]
    
    search_fields = ('empresa', 'titulo', 'palabras_clave')


class SolicitudCamposInline(admin.TabularInline):
    model = SolicitudCampos
    extra = 0
    fields = ('formulario_campos', 'contenido')
    readonly_fields = ('formulario_campos', 'contenido')


class SolicitudAdmin(admin.ModelAdmin):
    raw_id_fields = ('empresa',)
    
    fieldsets = [
        ('Información básica', {'fields': [
            'empresa',
            'formulario',
            'persona',
            'fecha_solicitud',
            'estado',
            'observacion',
            ]}),
    ]
    
    list_display = (
        'formulario',
        'empresa',
        'persona',
        'estado',
        'observacion',      
    )
    
    inlines = [SolicitudCamposInline]
    
    search_fields = ('empresa', 'formulario', 'persona', 'estado')
#===============================================================================
#AGREGAR VISTAS A INTERFAZ ADMIN 
#===============================================================================
admin.site.register(TaxonomiaCampo, TaxonomiaCampoAdmin)
admin.site.register(EstadoSolicitud, EstadoSolicitudAdmin)
admin.site.register(UnidadTiempo, UnidadTiempoAdmin)
admin.site.register(TipoCampo, TipoCampoAdmin)
admin.site.register(Formulario, FormularioAdmin)
admin.site.register(Solicitud, SolicitudAdmin)